kernel vec4 autoWBPrefilter (sampler src, float threshold)  __attribute__ ((preserves_opacity))
{
	vec4 originalPixel = sample(src, samplerCoord(src));
	vec4 p =  unpremultiply(originalPixel);

	// operate in luminance channel
	float y = 0.299 * p.r + 0.587 * p.g + 0.114 * p.b;
	float u = -0.14713 * p.r + -0.28886 * p.g + 0.436 * p.b;
	float v = 0.615 * p.r + -0.51499 * p.g + -0.10001 * p.b;

	float val = (abs(u) + abs(v)) / y;
	if (val < threshold && y <= 0.8 && y > 0.15)
	{
		return vec4(val, val, val, 1.0);
//		return originalPixel;
	}
	else
	{
		return vec4(1.0, 1.0, 1.0, 1.0);
	}
}
